CS/자바 & 스프링

CS/자바 & 스프링

[JAVA] JVM, JVM 메모리 구조

JVM (JAVA Virtual Machine) 정의 자바를 실행하기 위한 가상머신 ARM 아키텍쳐 같은 하드웨어는 레지스터 기반으로 동작하는데 비해 JVM은 스택기반으로 동작한다. 역할 자바 애플리케이션을 클래스 로더를 통해 읽어 들여 자바 API와 함께 실행 JAVA와 OS사이에서 중개자 역할을 수행하여 JAVA가 OS에 구애받지 않고 재사용을 가능하게 만듦 메모리관리, Garbage collection을 수행 구조 자바로 작성한 코드는 실행되기까지 크게 세단계를 거친다. 자바 소스코드(.java)가 작성됨 컴파일러가 소스코드(.java)를 바이트 코드(.class)로 변환 클래스 로더가 컴파일된 바이트 코드(.class)를 JVM의 실행 영역에 로드한 뒤 실행 더 구체적인 실행 과정은 접은 글을 참..

CS/자바 & 스프링

[JAVA] 변수와 메서드, 데이터 타입 (기본형, 참조형)

변수 데이터를 저장하기 위해 메모리에 공간을 만들어 할당하고, 이름을 부여한 것 클래스 변수 (Class variables) 클래스에서 선언된 변수. static 이 붙으면 클래스 변수, 클래스 메서드가 된다. (아무것도 없으면 인스턴스 변수, 인스턴스 메서드가 됨) 클래스가 로딩될 때 클래서 변수가 생성되고 JVM에 의해 클래스가 메모리에 올라가면 초기화 됨. 클래스 변수는 언제라도 바로 사용할 수 있고 프로그램 종료까지 유지된다. 모든 인스턴스가 공통된 값을 공유할 때, 인스턴스를 생성할 필요가 없는 값을 저장할 때 사용. JVM 메모리의 method 영역에 올라간다. 인스턴스 변수 (Instance variables) 클래스에서 선언된 변수. 클래스의 인스턴스를 생성할 때 만들어진다. 따라서 인스턴..

CS/자바 & 스프링

[Java] JAVA의 구동 원리, 종류, JVM, Garbage Collection, Thread-Safe, 직렬화

질문 출처 : https://github.com/jjuyeon/Tech-Interview-Study/blob/main/java/README.md [JAVA] JAVA 더보기 출처 종류 자바는 크게 세가지의 종류로 나뉜다. SE, EE, ME Java SE (Standard Edition) 자바 언어의 핵심 기능을 제공. 자바 언어의 기본적인 타입과 객체에서부터, 네트워킹, 보안, 데이터베이스 접근, GUI, XML 파싱에 사용되는 고수준의 클래스까지 모두 정의한다. 보통 학생들이 사용하는 수준의 에디션이다. Java EE (Enterprise Edition) 얘는 Java SE 플랫폼 상에 구축된다. 이는 기업용 애플리케이션을 개발하는 데 필요한 여러가지 도구와 라이브러리를 모아 놓은 것이다. 이 패키지..

CS/자바 & 스프링

[Java] 객체지향 SOLID 원칙, 스레드, 싱글톤 패턴

질문 출처 : https://github.com/jjuyeon/Tech-Interview-Study/blob/main/java/README.md [JAVA] 객체지향이란? 더보기 참고 https://ko.wikipedia.org/wiki/%EA%B0%9D%EC%B2%B4_%EC%A7%80%ED%96%A5_%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D http://www.incodom.kr/%EA%B0%9D%EC%B2%B4_%EC%A7%80%ED%96%A5#h_6c44ebae9d828428c5a51a0e5235aa96 개념 Object-Oriented Programming, OOP. 컴퓨터 프로그래밍의 패러다임 중 명령형 프로그래밍의 하나이다. 객체 지향 프로그래밍은 컴..

얌얌념념
'CS/자바 & 스프링' 카테고리의 글 목록